Rendering method of rendering image on two-dimensional screen

ABSTRACT

A frame where a two-dimensional image is formed is subdivided into predetermined unit areas, and a desired range is determined in the frame, and further, a determination is made whether or not overwrite rendering is possible for each unit area in the desired range. By doing so, it is possible to visibly display an object hidden by a shade of another object without carrying out a determination process relative to a positional relationship between a virtual viewpoint and object and a semi-transparency processing for making object semitransparent, and to realize the display process at high speed and low cost.

[0001] This application is related to Japanese Patent Application No.2000-385158 filed on Dec. 19, 2000, and No. 2001-326319 filed on Oct.24, 2001, based on which this application claims priority under theParis Convention and the contents of which are incorporated herein byreference.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] The present invention relates to a rendering method and arendering apparatus where an image is rendered on a two-dimensionalscreen such as a television monitor or the like, to a computer-readablerecording medium on which a rendering program executed by a computer isrecorded, a program processor for executing a rendering program, and arendering program executed by a computer.

[0004] 2. Description of the Related Art

[0005] Recently, for a television game machine or a personal computer,such as high integration and high speed of a processor and a memory hasbeen performed. As a result, for example, it is possible to generate athree-dimensional image having a sense of presence and depth in realtime, and to render the image on a two-dimensional monitor screen.

[0006] In the case of rendering a three-dimensional image on thetwo-dimensional monitor screen, geometry processing such as a coordinatetransformation processing, a clipping processing, a lighting processingare performed on three-dimensional polygon data, and as a result, dataobtained from the result of the above processing is subjected toperspective projection transformation.

[0007] Now, in the case of rendering the three-dimensional image on thetwo-dimensional monitor screen, for example, as shown in FIG. 1, thereis a case where a certain object A exists in a visual field (frame F)from a virtual viewpoint, and further, another object B exists betweenthe object A and the above virtual viewpoint. In this case, an imagewhen viewing from the virtual viewpoint looks like an image such thatthe object A is partially shielded by the object B.

[0008] As this example, in a case that a positional relationship appearssuch that the object B exists between the virtual viewpoint and theobject A, for allowing the object A to be viewed from the above virtualviewpoint, the object B may be rendered to be semitransparent, forexample, as shown in FIG. 2. In other words, the object B is rendered ina state of being semitransparent, and thereby, in a portion ab where theobject B overlaps with the object A, it is possible to see the object Athrough the semitransparent object B.

[0009] In a conventional rendering apparatus, in the case of renderingthe image as shown in FIG. 2, first, as a first process, whether or notanother body (object or the like) exists between the virtual viewpointand the object A is determined in advance. In this first process, it isrecognized that the object B exists in the example shown in FIG. 2.Subsequently, as a second process, the object B is rendered to besemitransparent.

[0010] The conventional rendering apparatus carries out the first andsecond processes, and thereby, renders an image such that the object Ais seen from the virtual viewpoint even if a positional relationshipappears such that the object B exists between the virtual viewpoint andthe object A.

[0011] However, in order to carry out a determination process such asthe above first process, there is a need of making a great many ofoperations for calculating a distance between the virtual viewpoint andeach of the objects A and B. For this reason, a long processing time isrequired. Therefore, for example, in the case of rendering athree-dimensional image comprising a great many of objects in real time,the image processing is not fully performed. As a result, there is apossibility that the image is broken.

[0012] For example, in this case where the rendering apparatus isequipped with a very high speed computable CPU (Central ProcessingUnit), it is possible to shorten the time spent for the abovedetermination process. However, the very high speed computable CPU isexpensive. For this reason, there is a problem of increasing a cost ofthe rendering apparatus.

[0013] Moreover, the above second process, that is, semi-transparencyprocessing is generally carried out at a unit of polygon. Therefore, forexample, in the case where the object A is significantly smaller thanthe object B, a problem occurs such that a portion that should not bemade semitransparent becomes semitransparent in the object B. Asdescribed above, when a portion that should not be made semitransparentbecomes semitransparent, for example, other objects and the like aretransparent. Therefore, the images are unnatural and significantlyhaving trouble seeing.

SUMMARY OF THE INVENTION

[0014] The present invention has been made in view of the above problemin the prior art. Accordingly, an object of the present invention is toprovide a rendering method and a rendering apparatus, which can displayan object hidden by a shade of another object and the like in a visiblestate without carrying out such as a determination process relative to apositional relationship between a virtual viewpoint and object and asemi-transparency processing for making object semitransparent, and canperform a display process at high speed and low cost, and to acomputer-readable recording medium on which a rendering program executedby a computer is recorded, a program processor for executing a renderingprogram, and a rendering program executed by a computer.

[0015] According to one aspect of the present invention, a frame inwhich a two-dimensional image is formed is subdivided into eachpredetermined unit area, and a desired range is determined in the frame,and further, it is determined whether or not overwrite rendering ispossible for each unit area in the desired range.

[0016] In particular, according to another aspect of the presentinvention, a rendering range where a desired object should be renderedin a frame, or a rendering range where a desired object is rendered in aframe, is determined as a desired range. Further, of each unit area inthe desired range, with respect to a unit area in response to apredetermined regular pattern, it is determined whether or not overwriterendering is possible. By doing so, a desired object which is shieldedby other objects from the virtual viewpoint, for example, is rendered asseen to be semitransparent by appearance.

[0017] Other and further objects and features of the present inventionwill become obvious upon understanding of the illustrative embodimentsabout to be described in connection with the accompanying drawings orwill be indicated in the appended claims, and various advantages notreferred to herein will occur to one skilled in the art upon employingof the invention in practice.

BRIEF DESCRIPTION OF THE DRAWINGS

[0018]FIG. 1 is a view to explain an image of a state that an object Ais partially shielded by an object B from the view of a virtualviewpoint;

[0019]FIG. 2 is a view to explain an image obtained by determinationprocessing relative to a positional relationship between conventionalvirtual viewpoint and object, and object semi-transparency processing;

[0020]FIG. 3 is a diagram schematically showing an example of aconfiguration of principal parts of a rendering apparatus according toone embodiment of the present invention;

[0021]FIG. 4 is a flowchart showing a flow of rendering processingaccording to a first embodiment of the present invention;

[0022]FIG. 5 is a view showing a state that an object B is rendered in aframe by a processing of step S2 shown in the flowchart of FIG. 4;

[0023]FIG. 6 is a view to explain meshing of frame F, a predeterminedrange E and mesh Mc for processing of clearing a Z value;

[0024]FIG. 7 is a view to explain showing an image, which is madesemitransparent by rendering according to one embodiment of the presentinvention;

[0025]FIG. 8 is a flowchart showing a flow of rendering processingaccording to a second embodiment of the present invention; and

[0026]FIG. 9 is a block diagram showing an overall constitution of apersonal computer for executing a rendering processing program whoseprocess flow was shown in FIG. 4 or FIG.8.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0027] Various embodiments of the present invention will be describedwith reference to the accompanying drawings. It is to be noted that thesame or similar reference numerals are applied to the same or similarparts and elements throughout the drawings, and the description of thesame or similar parts and elements will be omitted or simplified.

[0028] Configuration of Rendering Apparatus of Present Embodiment

[0029]FIG. 3 schematically shows a configuration of rendering apparatus1 of the present embodiment. The rendering apparatus 1 of thisembodiment is an apparatus which renders a two-dimensional image bytexture mapping to a three-dimensional polygon. For example, theapparatus is applicable to a television game machine, a personalcomputer, and a three-dimensional graphic device, or the like.

[0030] In FIG. 3, the rendering apparatus of this embodiment includes aluminance calculation and coordinate transformation unit 2 (hereinafter,referred to as LC/CT unit 2), an LOD (Level Of Detail) calculation unit3, a texture coordinate calculation unit 4, a DDA (Digital DifferentialAnalyzer) unit 5, a pixel engine 6, and an image memory 7, as principalconstituent elements.

[0031] The above image memory 7 comprises the storage areas of: a Zbuffer 8 storing a Z-direction value (Z coordinate value) from a virtualviewpoint, a texture buffer 9 storing a basic texture for generating theentire pattern on polygon by mapping, or a modulation texture foramplitude-modulating a pattern generated by mapping of the basic textureor the like, and a frame buffer 10 used for storing and synthesizing aframe data (two-dimensional image data) displayed on a two-dimensionalmonitor screen.

[0032] As various information for rendering a three-dimensional image,for example, three-dimensional polygon information, texture information,light source information and viewpoint information and the like areinputted to an input terminal 13 of the rendering apparatus 1 includingeach constituent element. Moreover, these various information aresupplied via a communication line or storage device or the like.

[0033] The polygon information is information composed of each vertex(x, y, z) coordinate of a triangular polygon, for example, and a normalof each vertex. The texture information is the information composed ofpixel information and a texture coordinate corresponding to each vertexof triangular polygon. The viewpoint information and light sourceinformation are information for carrying out a luminance calculation andcoordinate transformation with respect to polygon. The light sourceinformation may be information indicative of a plurality of lightsources, and is not limited to one light source. In addition, thepolygon vertex information includes various information such as colorinformation, or a fog value for giving an effect such that a far objectis foggy. These various information are first inputted to the luminancecalculation and coordinate transformation unit 2 of the renderingapparatus 1.

[0034] The LC/CT unit 2 converts (transforms) the inputted polygoncoordinate information thus inputted into a coordinate value on atwo-dimensional rendering coordinate system based on the viewpointinformation, and calculates a luminance of each polygon vertex based onthe viewpoint information and light source information. Moreover, theLC/CT unit 2 makes the above calculation while carrying out aperspective transformation or the like. Each value calculated by theLC/CT unit 2 is inputted to the LOD calculation unit 3.

[0035] The LOD calculation unit 3 calculates an LOD (Level Of Detail)value used when the pixel engine 6 reads a basic texture from thetexture buffer 9, from the converted polygon z coordinate. In this case,the LOD value is a value calculated from a reduction ratio used whenreducing a polygon. The reduction ratio is determined as a logarithm ofdistance from the viewpoint to polygon. Further, the above LOD value issent to the pixel engine 6 via the texture coordinate calculation unit 4and the DDA unit 5.

[0036] The texture coordinate calculation unit 4 calculates a texturecoordinate value used when the pixel engine 6 reads a modulation texturefrom the texture buffer 9, from a texture coordinate value of the basictexture. These texture coordinate values are sent to the pixel engine 6via the DDA unit 5.

[0037] The DDA unit 5 converts the above two-dimensional polygon vertexinformation, Z coordinate value and luminance information or the likeinto pixel information. More specifically, a coordinate value, a Zcoordinate value luminance and a texture coordinate of each pixel aresuccessively determined by linear interpolation. An output from the DDAunit 5 is sent to the pixel engine 6.

[0038] The pixel engine 6 controls the read and write of the Z buffer 8,the texture buffer 9 and the frame buffer 10, and carries out texturemapping using texture information read from the texture buffer 9 andpixel information obtained from the DDA unit 5, Z coordinate comparison,and pixel value calculation.

[0039] Moreover, in the pixel engine 6, when carrying out the abovetexture mapping, mapping to a three-dimensional polygon is carried outby a so-called MIPMAP method using the basic texture stored in thetexture buffer 9.

[0040] The above MIPMAP method is a method of preparing a texture havingdifferent size, that is, 1/2, 1/4, 1/8 . . . (ratio of each side length)as a texture pasted on a three-dimensional polygon, and selecting theprepared texture in accordance with a reduction ratio, and further,carrying out mapping with respect to the three-dimensional polygon.According to the above MIPMAP method, as described above, the texturereducing the original texture is mapped to the polygon, and thereby, itis possible to prevent a generation of aliasing in the case where thepolygon is reduced.

[0041] Moreover, in texture mapping, in the case where a higherfrequency component is applied to the above basic texture, the pixelengine 6 carries out texture mapping using the modulation texture storedin the texture buffer 9.

[0042] Further, the pixel engine 6 carries out scissoring, dithering,color clamp or the like, and further, conducts a α test as the needarises. The above scissoring is a process for removing a data projectingfrom a screen, and dithering is a process for combining an arrangementof color for representing many colors by a few colors. The color clampis a process for giving a limitation so that a value does not exceed 255or does not become smaller than zero in color calculation. The above αtest is a process for carrying out a control whether or not a α value ofeach pixel, that is, texture should be rendered by a coefficient valueindicative of an image blend ratio in the case of mapping.

[0043] In the pixel engine 6, an image data obtained from the above eachprocess is stored in the frame buffer 10, and then, a frame data(two-dimensional image data) rendered on a two-dimensional monitorscreen is formed. Thereafter, the two-dimensional image data thus formedis read from the frame buffer 10, and then, is outputted from an outputterminal 14, and thus, is supplied to a two-dimensional monitor.

[0044] First Embodiment of Rendering Processing

[0045] As described above in FIG. 1, for example, the positionalrelationship exists such that an object A exists in a visual field(frame F) from the virtual viewpoint, and further, another object Bexists between the object A and the virtual viewpoint. In this case, therendering apparatus of this embodiment can generate an image displayingthe object A hidden by a shade of the object B in a visible statewithout carrying out a determination process relative to a positionalrelationship between the virtual viewpoint as described above in FIG. 2and object, and an object semi-transparency processing.

[0046] Hereinafter, in the rendering apparatus having a configurationshown in FIG. 3, a flow of rendering processing of the first embodimentof the present invention will be described with reference to FIG. 4 andFIG. 5 to FIG. 7 at the time of generating an image capable of visiblydisplaying the object A hidden by the shade of the object B.

[0047] In FIG. 4, first, as a processing of step S1, the pixel engine 6determines an object (object A) to be visibly displayed.

[0048] Next, as a processing of step S2, the pixel engine 6 forms(renders) all image excluding the above object A of objects to berendered in the visual field (frame F) from the virtual viewpoint on theframe buffer 10. In this embodiment, by the process of step S2, theobject B is rendered in the frame F as shown in FIG. 5.

[0049] Further, as a processing of step S3, the pixel engine 6 writes aZ value (distance from virtual viewpoint (Z coordinate value)) of eachpixel in the Z buffer 8 with respect to all images rendered in the frameF. In this embodiment, the Z coordinate value of the virtual viewpointis set to the maximum value and an infinite Z coordinate value is set tothe minimum value.

[0050] Next, as a processing of step S4, the pixel engine 6 divides theframe F into a unit area having a predetermined size (hereinafter,referred to as mesh M) as shown in FIG. 6, and further, determines apredetermined range (including the surroundings as the need arises) Ewhere the above object A should be rendered. In the example shown inFIG. 6, the mesh M has a shape of square such as n×m (n, m=1, 2, 3 . ..) pixel. In this case, the mesh M is not limited to the square, and mayhave a shape of triangle, polygon such as honeycomb, circle and thelike, for example. One mesh may be one pixel.

[0051] Next, as a processing of step S5, the pixel engine 6 deletes a Zvalue corresponding to each pixel included in mesh Mc on every other dot(every other mesh) of the mesh M included in the predetermined range Edetermined in the above step S4 from the Z buffer 8, or sets it toinfinite (hereinafter, referred to as clearing processing).

[0052] In other words, to clear the Z value with respect to the mesh Mcmeans that overwrite rendering is possible with respect to the mesh Mcsubjected to clearing processing. More specifically, for example, of themesh M included in the predetermined range E and the object B, the meshMc having the Z value subjected to clearing processing means that theobject A image can be overwritten and rendered on the object B imageeven if the object A is further from the virtual viewpoint than theobject B.

[0053] After the processing of steps S5, in step S6, the pixel engine 6renders the object A in the frame F.

[0054] As described above, even if the object B exists between theobject A and the virtual viewpoint, the finally rendered object A imageis rendered on each mesh Mc having the Z value subjected to clearingprocessing.

[0055] In other words, as shown in FIG. 7, when viewing from the virtualviewpoint, in a portion ab overlapping with the object B, the object Aimage is overwritten and rendered at the portion of mesh Mc having the Zvalue subjected to clearing processing. As a result, the object Bbecomes semitransparent, and therefore, the object A is seen throughthere. Moreover, when viewing from the virtual viewpoint, in a portionaa of the object A, which does not overlap with the object B, the objecta image is intactly rendered. As a matter of course, in the case whereno other object exists between the virtual viewpoint and the object A,the entirety of the object A is intactly rendered.

[0056] Moreover, in the example of FIG. 6 or FIG. 7, the size of eachmesh is illustrated larger so as to be clarified in the drawings. As aresult, the portion ab where the object B overlaps with object A isillustrated like a checkered pattern as shown in FIG. 7. However, infact, each mesh has a very small size; therefore, the portion ab is notseen like the above checkered pattern, and an image is displayed suchthat the object A is seen to be semitransparent.

[0057] Second Embodiment of Rendering Processing

[0058] In the above rendering processing of the first embodiment, theframe F is divided into the mesh M, and clearing processing is made withrespect to the Z value corresponding to each pixel included in each meshMc on every other dot (every other mesh) of the mesh M included in thepredetermined range E where the object A should be rendered. By doingso, a semitransparent image has been realized. In the followingrendering of the second embodiment, it is possible to realize the samesemitransparent image as the above first embodiment.

[0059] With reference to FIG. 8, a rendering flow of the secondembodiment of the present invention will be described below.

[0060] In FIG. 8, first, as a processing of step S11, the pixel engine 6determines the object A in the same manner as the step S1 of FIG. 4.

[0061] Next, as a processing of step S12, the pixel engine 6 previouslyrenders the object A in the visual field (frame F) from the virtualviewpoint.

[0062] Next, as a processing of step S13, the pixel engine 6 divides theframe F into a mesh M having a predetermined size similar to the exampleof FIG. 6, and further, determines a predetermined range E where theobject A is rendered. In this second embodiment, it is desirable thatthe predetermined range E is only range rendering the object A.Moreover, in this second embodiment, the mesh M is not limited to ashape of square as described in the above first embodiment.

[0063] Next, as a processing of step S14, the pixel engine 6 makes theabove α test with respect to a frame buffer value corresponding to eachpixel included in each mesh Mc on every other dot (every other mesh) ofthe mesh M included in the predetermined range E, and thereby, inhibitsrendering of pixel of other objects. More specifically, for example, a αvalue of each pixel is set to 0% (minimum value) , and thereby, controlis made so that the pixel of other objects is not blended, or the Zvalue corresponding to each pixel included in each mesh Mc is set to themaximum value (Z coordinate value of virtual viewpoint), and thereby, infact, the pixel of other objects is inhibited from being rendered.

[0064] In this embodiment, for case that the Z coordinate value of thevirtual viewpoint is set to the minimum value and the infinite Zcoordinate value is set to the maximum value, the Z coordinate valuecorresponding to each pixel included in the mesh Mc is set to theminimum (Z coordinate value of the virtual viewpoint) to thereby inhibitrendering the pixel of other objects.

[0065] In other words, to inhibit the above mesh Mc from being renderedmeans that the mesh Mc having rendering inhibition cannot be newlyoverwritten and rendered. More specifically, of the mesh M included inthe predetermined range E, the mesh Mc having rendering inhibition meansthat the object B image is not overwritten and rendered on thepreviously rendered object A image, even if the object B is closer tothe virtual viewpoint than the object A.

[0066] After the processing of step S14, as a processing of step S15,the pixel engine 6 renders an image other than the object A in the frameF. By doing so, even if the object B exists between the objects and thevirtual viewpoint, the pixel of other objects is inhibited from beingrendered on each mesh Mc. Therefore, the object A image is notoverwritten by the object B image; as a result, the object A imageremains therein.

[0067] In other words, similar to the case of FIG. 7, in the portion abof the object A overlapping with the object B when viewing from thevirtual viewpoint, the object A image remains in each mesh Mc portion;as a result, the object B is seen in a state of being semitransparent,so that the object A can be intactly seen. Further, in the portion aa ofthe object A, which does not overlap with the object B when viewing fromthe virtual viewpoint, the object A image remains intactly. Of course,in the case where no other object exists between the virtual viewpointand the object A, the entirety of the object A intactly remains therein.

[0068] In the pixel engine 6, the process shown in the flowchart shownin FIG. 4 and FIG. 8 may be realized by a hardware such as a DSP, or maybe realized by a software such as a CPU using a rendering processingprogram transmitted via communication line and a rendering processingprogram read from storage medium by storage device. In particular, inthe case where rendering by the pixel engine 6 is realized by software,the rendering processing program is a program of successively performingeach step described in a flow chart of FIG. 4 or FIG. 8. The renderingprocessing program may be prepared as a processing program for the pixelengine 6, and in addition, may be previously inputted together with thepolygon information from the input terminal 13 of FIG. 3.

[0069] As a specific example of a constitution for embodying therendering processing of this embodiment on the software basis, FIG. 9shows an overall constitution of a personal computer on which therendering processing program whose process flow was shown in FIG. 4 orFIG. 8 is run. Now in this embodiment, the rendering processing programis mainly executed by a CPU 123 shown in FIG. 9.

[0070] In FIG. 9, a storage section 128 comprises, for example, a harddisk and a driver therefore. The hard disk has stored therein anoperating program; rendering processing program 129 of this embodimentincorporated for example by installation from various recording mediasuch as a CD-ROM and DVD-ROM, or downloading via a communication line;and various data 130 typically including graphic information for polygondrawing, texture, Z value, general texture, color value and α value.

[0071] The communication section 121 is a communication deviceresponsible for data communication with the external, such as a modemallowing connection to an analogue public telephone line, a cable modemallowing connection to a cable television network, a terminal adaptorallowing connection to ISDN (Integrated Services Digital Network), and amodem allowing connection to ADSL (Asymmetric Digital Subscriber Line).A communication interface section 122 is an interface device responsiblefor protocol conversion that enables data exchange between thecommunication section 121 and an internal bus.

[0072] An input section 133 is an input device such as a keyboard, mouseand touch pad. A user interface section 132 is an interface device forsupplying signals from the input section 133 to the internal section.

[0073] A drive section 135 is a drive device capable of reading variousdata and programs including the rendering processing program accordingto this embodiment from a recording medium 151 such as a card-typesemiconductor memory. A drive interface section 134 is an interfacedevice for supplying signals from the drive section 135 to the internalsection.

[0074] A display section 137 is a display device such as a CRT (cathoderay tube) or LCD (liquid crystal display). A display drive section 136is a drive device responsible for driving such display section 137 fordisplay.

[0075] A ROM 124 typically comprises a rewritable non-volatile memorysuch as a flash memory, and stores a BIOS (Basic Input/Output System)and various initial set values of the personal computer. A RAM 125 is adevice into which application programs read out from the hard disk inthe storage section 128 or various data are loaded, and is used as aworking RAM for the CPU 123.

[0076] The CPU 123 controls the entire operations of the personalcomputer as well as executes the foregoing rendering processing based onthe operating system programs or the rendering processing program 129 ofthis embodiment stored in the storage section 128. That is, in theconstitution shown in FIG. 9, the CPU 123 executes the renderingprocessing program of this embodiment, which is one of the applicationprograms read out from the hard disk of the storage section 128 andloaded into the RAM 125, to thereby enable the rendering processingdescribed in the foregoing embodiment.

[0077] As described above, according to the first and second embodimentsof the present invention, the frame F is divided into the mesh M, and itis determined whether or not overwrite rendering is possible for eachmesh M in a predetermined range E where a predetermined object A shouldbe rendered. More specifically, the Z value of each mesh Mc is subjectedto clearing processing on every other dot (every other mesh), or otherobjects are inhibited from being rendered. By doing so, it is possibleto visibly display an object hidden by a shade of another object withoutcarrying out a determination process relative to a positionalrelationship between a virtual viewpoint and object and asemi-transparency processing for making object semitransparent at highspeed and low cost.

[0078] Moreover, in the present embodiments, the above Z value subjectedto clearing processing and rendering inhibitions of other objects areset at pixel unit. Therefore, even if the object A is very smaller thanthe object B, no problem arises such that a portion of the object B,which should not be made semitransparent, becomes semitransparent, asthe conventional transparency processing.

[0079] A description of each embodiment is an example of the presentinvention. Therefore, the present invention is not limited to the aboveembodiments, and various changes may be made in accordance with a designwithin a scope without diverging from the technical concept of thepresent invention.

[0080] For example, in the above first and second embodiments, the aboveZ value clearing processing and rendering inhibitions of other objectshave been performed at a regular pattern of every other dot (every othermesh). The present invention is not limited to this pattern, and the Zvalue clearing processing and rendering inhibitions of other objects maybe performed on every N dot (N=2, 3 . . . ) such as every two dots(every two meshes) and every three dots (every three meshes), or at aregular pattern of alternately repeating every N dot and every N+L (L=1,2, 3 . . . ) dot.

[0081] For example, in the case where the regular pattern of every otherdot (every other mesh) is employed, a degree of semi-transparencybecomes 50%, and in the case where the regular pattern of every two dots(every two meshes) is employed, the degree of semi-transparency becomes25%. Therefore, according to the present invention, it is possible toarbitrarily set the degree of semi-transparency in accordance withvarious regular patterns.

[0082] Besides, the regular pattern is formed into other arbitrarydesign pattern, in addition to the above-mentioned checkered designpattern, and thereby, it is possible to obtain various images capable ofrealizing special visible state in addition to the above-mentionedsemi-transparency. The arbitrary design pattern may include, forexample, design patterns for expressing some drawings or symbols, or forrealizing special image effects. For example, when the drawing patternis employed as the above-mentioned design pattern, the rendering processof such as watermark can be easily realized in the embodiment.

What is claimed is:
 1. A rendering method, comprising the steps of:subdividing a frame where a two-dimensional image is formed intopredetermined unit areas; determining an optional area in the frame; anddetermining whether or not overwrite rendering is possible for each unitarea in the optional area.
 2. The rendering method according to claim 1,further comprising the steps of: generating a frame image in which allobjects except for a predetermined object are rendered; and determininga rendering range where the predetermined object should be rendered inthe generated frame image, and wherein the optional area is determinedbased on the rendering range.
 3. The rendering method according to claim2, further comprising the step of: making a determination that theoverwrite rendering is possible with respect to the unit areacorresponding to a predetermined pattern of the unit area included inthe optional area.
 4. The rendering method according to claim 3, furthercomprising the step of: making a determination that the overwriterendering is possible by deleting a Z coordinate value indicative of adistance from a virtual viewpoint or by setting it to the infinite, withrespect to the unit area corresponding to the predetermined pattern. 5.The rendering method according to claim 1, further comprising the stepof: rendering a predetermined object in the frame, and wherein theoptional area is determined based on a rendering range where thepredetermined object is rendered.
 6. The rendering method according toclaim 5, further comprising the step of: making a determination that theoverwrite rendering is inhibited with respect to the unit areacorresponding to a predetermined pattern of the unit area included inthe optional area.
 7. The rendering method according to claim 6, whereinthe overwrite rendering is inhibited by setting a coefficient valueindicative of a blend ratio used when carrying out image mapping to theminimum value, with respect to the unit area corresponding to thepredetermined pattern.
 8. The rendering method according to claim 6,further comprising the step of: making a determination that theoverwrite rendering is inhibited by setting the Z coordinate valueindicative of a distance from the virtual viewpoint to the Z coordinatevalue of the virtual viewpoint, with respect to the unit areacorresponding to the predetermined pattern.
 9. The rendering methodaccording to claim 3, further comprising the step of: changing arendering ratio of the predetermined object by setting the predeterminedpattern.
 10. The rendering method according to claim 3, wherein thepredetermined pattern includes a predetermined design.
 11. A renderingapparatus, comprising: a subdividing section for subdividing a framewhere a two-dimensional image is formed into predetermined unit areas;an area determining section for determining an optional area in theframe; and a determining section for determining whether or notoverwrite rendering is possible for each unit area in the optional area.12. The rendering apparatus according to claim 11, further comprising:an image generating section for generating a frame image in which allobjects except for a predetermined object are rendered, and wherein thearea determining section determines a rendering range where thepredetermined object should be rendered in the generated frame image,and determines the optional area based on the rendering range.
 13. Therendering apparatus according to claim 12, wherein the determiningsection makes a determination that the overwrite rendering is possiblewith respect to the unit area corresponding to a predetermined patternof the unit area included in the optional area.
 14. The renderingapparatus according to claim 13, wherein the determining section makes adetermination that the overwrite rendering is possible by deleting the Zcoordinate value indicative of a distance from a virtual viewpoint or bysetting it to the infinite, with respect to the unit area correspondingto the predetermined pattern.
 15. The rendering apparatus according toclaim 11, further comprising: an object rendering section for renderinga predetermined object in the frame, and wherein the area determiningsection determines the optional area based on a rendering range wherethe predetermined object is rendered.
 16. The rendering apparatusaccording to claim 15, wherein the determining section makes adetermination that the overwrite rendering is inhibited with respect tothe unit area corresponding to a predetermined pattern of the unit areaincluded in the optional area.
 17. The rendering apparatus according toclaim 16, wherein the determining section makes a determination that theoverwrite rendering is inhibited by setting the coefficient valueindicative of a blend ratio used when carrying out image mapping to theminimum value, with respect to the unit area corresponding to thepredetermined pattern.
 18. The rendering apparatus according to claim16, wherein the determining section makes a determination that theoverwrite rendering is inhibited by setting the Z coordinate valueindicative of a distance from the virtual viewpoint to the Z coordinatevalue of the virtual viewpoint, with respect to the unit areacorresponding to the predetermined pattern.
 19. The rendering apparatusaccording to claim 13, wherein the determining section changes arendering ratio of the predetermined object by setting the predeterminedpattern.
 20. The rendering apparatus according to claim 13, wherein thepredetermined pattern includes a predetermined design.
 21. Acomputer-readable recording medium recording a rendering processingprogram executed by a computer, the rendering processing program,comprising: a subdividing step of subdividing a frame where thetwo-dimensional image is formed into predetermined unit areas; an areadetermining step of determining an optional area in the frame; and adetermining step of determining whether or not overwrite rendering ispossible for each unit area in the optional area.
 22. Thecomputer-readable recording medium recording a rendering processingprogram according to claim 21, the rendering processing program furthercomprising: a step of generating a frame image in which all objectsexcept for a predetermined object are rendered; and a step ofdetermining a rendering rage where the predetermined object should berendered in the generated frame image, and wherein the optional area isdetermined based on the rendering range.
 23. The computer-readablerecording medium recording a rendering processing program according toclaim 22, the determining step, further comprising: a step of making adetermination that the overwrite rendering is possible with respect tothe unit area corresponding to a predetermined pattern of the unit areaincluded in the optional area.
 24. The computer-readable recordingmedium recording a rendering processing program according to claim 23,the determining step, further comprising: a step of making adetermination that the overwrite rendering is possible by deleting the Zcoordinate value indicative of a distance from the virtual viewpoint orby setting it to the infinite, with respect to the unit areacorresponding to the predetermined pattern.
 25. The computer-readablerecording medium recording a rendering processing program according toclaim 21, the rendering processing program further comprising: a step ofrendering a predetermined object in the frame, and wherein the optionalarea is determined based on a rendering range where the predeterminedobject is rendered.
 26. The computer-readable recording medium recordinga rendering processing program according to claim 25, the determiningstep, further comprising: a step of making a determination that theoverwrite rendering is inhibited with respect to the unit areacorresponding to a predetermined pattern of the unit area included inthe optional area.
 27. The computer-readable recording medium recordinga rendering processing program according to claim 26, wherein theoverwrite rendering is inhibited by setting a coefficient valueindicative of a blend ratio used when carrying out image mapping to theminimum value, with respect to the unit area corresponding to thepredetermined pattern.
 28. The computer-readable recording mediumrecording a rendering processing program according to claim 26, thedetermining step, further comprising: a step of making a determinationthat the overwrite rendering is inhibited by setting the Z coordinatevalue indicative of a distance from a virtual viewpoint to the Zcoordinate value of the virtual viewpoint, with respect to the unit areacorresponding to the predetermined pattern.
 29. The computer-readablerecording medium recording a rendering processing program according toclaim 23, the determining step, further comprising: a step of changing arendering ratio of the predetermined object by setting the predeterminedpattern.
 30. The computer-readable recording medium recording arendering processing program according to claim 23, wherein thepredetermined pattern includes a predetermined design.
 31. A programprocessor executing a rendering processing program, the renderingprocessing program, comprising: a subdividing step of subdividing aframe where the two-dimensional image is formed into predetermined unitareas; an area determining step of determining an optional area in theframe; and a determining step of determining whether or not overwriterendering is possible for each unit area in the optional area.
 32. Theprogram processor executing a rendering processing program according toclaim 31, the rendering processing program, further comprising: a stepof generating a frame image in which all objects except for apredetermined object are rendered; and a step of determining a renderingrage where the predetermined object should be rendered in the generatedframe image, and wherein the optional area is determined based on therendering range.
 33. The program processor executing a renderingprocessing program according to claim 32, the determining step, furthercomprising: a step of making a determination that the overwriterendering is possible with respect to the unit area corresponding to apredetermined pattern of the unit area included in the optional area.34. The program processor executing a rendering processing programaccording to claim 33, the determining step, further comprising: a stepof making a determination that the overwrite rendering is possible bydeleting the Z coordinate value indicative of a distance from a virtualviewpoint or by setting it to the infinite, with respect to the unitarea corresponding to the predetermined pattern.
 35. The programprocessor executing a rendering processing program according to claim31, the rendering processing program further comprising: a step ofrendering a predetermined object in the frame, and wherein the optionalarea is determined based on a rendering range where the predeterminedobject is rendered.
 36. The program processor executing a renderingprocessing program according to claim 35, the determining step, furthercomprising: a step of making a determination that the overwriterendering is inhibited with respect to the unit area corresponding to apredetermined pattern of the unit area included in the optional area.37. The program processor executing a rendering processing programaccording to claim 36, wherein the overwrite rendering is inhibited bysetting a coefficient value indicative of a blend ratio used whencarrying out image mapping to the minimum value, with respect to theunit area corresponding to the predetermined pattern.
 38. The programprocessor executing a rendering processing program according to claim36, the determining step, further comprising: a step of making adetermination that the overwrite rendering is inhibited by setting the Zcoordinate value indicative of a distance from the virtual viewpoint tothe Z coordinate value of the virtual viewpoint, with respect to theunit area corresponding to the predetermined pattern.
 39. The programprocessor executing a rendering processing program according to claim33, the determining step, further comprising: a step of changing arendering ratio of the predetermined object by setting the predeterminedpattern.
 40. The program processor executing a rendering processingprogram according to claim 33, wherein the predetermined patternincludes a predetermined design.
 41. A rendering processing programexecuted by a computer, comprising: a subdividing step of subdividingthe frame where the two-dimensional image is formed into predeterminedunit areas; an area determining step of determining an optional area inthe frame; and a determining step of determining whether or notoverwrite rendering is possible for each unit area in the optional area.